package com.hsp_java.map_;

import java.util.HashMap;
import java.util.Objects;

public class HashMapSource2 {
    public static void main(String[] args) {
        //扩容机制：
        //第一次扩容默认为16
        //然后每一次到达临界值就会扩大至两倍
        //16(12) -> 32(24) ->.....
        //如果一条链表挂的结点超过了八个，先看table表是不是到达64，如果没到先扩容至64
        //到了就会对链表进行树化
        HashMap map = new HashMap();
        //for (int i = 0; i < 12; i++) {
        //    map.put(new A(i) , i);
        //}
        for (int i = 0; i < 12; i++) {
            map.put(new A(i), "hello");
        }
        map.put("aaa", "bbb");
        System.out.println(map);
    }
}

class A {
    private int m;
    public A(int i) {
        m = i;
    }


    //@Override
    //public int hashCode() {
    //    return 1000;
    //}

    @Override
    public String toString() {
        return "A{" +
                "m=" + m +
                '}';
    }
}